package com.deyuanyun.pic.ctrl.app.domain.Device;

import com.alibaba.fastjson.annotation.JSONField;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description 阴保电源记录表
 * @author Jerry
 * @date 2016-12-08
 */
public class RecodeCpPowerDto {
    /**
     * 主键
     */
    private String id;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 创建人
     */
    @JSONField(name = "userID")
    private String createUser;

    /**
     * 创建备注
     */
    private String createRemark;

    /**
     * 更新时间
     */
    private Date updateDate;

    /**
     * 更新人员
     */
    private String updateUser;

    /**
     * 更新原因
     */
    private String updateRemark;

    /**
     * 逻辑删除字段
     */
    private Short deleted;

    /**
     * 版本
     */
    private Short version;

    /**
     * 是否是最新数据，0：最新数据；1：历史数据
     */
    private Short isNewest;

    /**
     * 数据状态
     */
    private String dataStated;

    /**
     * 阴保电源编号（PIC_CORRCTRL_EQPT_CPPOWER.ID_）
     */
    @JSONField(name="eqptId")
    private String cppowerId;

    /**
     * 设备编号(自定义编号)
     */
    @JSONField(name="eqptNumber")
    private String customNumber;

    /**
     * 输出电压（V）
     */
    private Object outputVoltage;

    /**
     * 输出电流（A）
     */
    private Object outputCurrent;

    /**
     * 控制电位（mV）
     */
    private Integer settingPotential;

    /**
     * 通电点电位（mV）
     */
    private Integer metricalPotential;

    /**
     * 运行状态（RUNNING运行中、WRITTEN_OFF已报废、MAINTENANCE维修中、LEAVE_UNUSED闲置中）
     */
    private String activeStated;

    /**
     * 停机时间_开始
     */
    private Date downBeginDate;

    /**
     * 停机时间_结束
     */
    private Date downEndDate;

    /**
     * 停机原因DOWNREASON
     */
    private String downReason;

    /**
     * 接地和避雷器设施检查维护
     */
    private String grounding;

    /**
     * 年检修记录
     */
    @JSONField(name = "repairRecord")
    private String annualRepairRecord;

    /**
     * 异常编号（若无异常则为空）PIC_CTRL_RECODE_EXCEPTION.ID_
     */
    private String exceptionId;

    /**
     * 电缆及连接端子检测维护
     */
    private String connectionCheck;

    /**
     * 仪表校准
     */
    private String instrumentCalibration;

    /**
     * 记录人（直接存名称）
     */
    private String recorder;

    /**
     * 记录时间
     */
    private Date recordTime;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 业务组织路径
     */
    private String orgBizPath;

    /**
     * @return 主键
     */
    public String getId() {
        return id;
    }

    /**
     * @param id 主键
     */
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    /**
     * @return 创建时间
     */
    public Date getCreateDate() {
        return createDate;
    }

    /**
     * @param createDate 创建时间
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    /**
     * @return 创建人
     */
    public String getCreateUser() {
        return createUser;
    }

    /**
     * @param createUser 创建人
     */
    public void setCreateUser(String createUser) {
        this.createUser = createUser == null ? null : createUser.trim();
    }

    /**
     * @return 创建备注
     */
    public String getCreateRemark() {
        return createRemark;
    }

    /**
     * @param createRemark 创建备注
     */
    public void setCreateRemark(String createRemark) {
        this.createRemark = createRemark == null ? null : createRemark.trim();
    }

    /**
     * @return 更新时间
     */
    public Date getUpdateDate() {
        return updateDate;
    }

    /**
     * @param updateDate 更新时间
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    /**
     * @return 更新人员
     */
    public String getUpdateUser() {
        return updateUser;
    }

    /**
     * @param updateUser 更新人员
     */
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser == null ? null : updateUser.trim();
    }

    /**
     * @return 更新原因
     */
    public String getUpdateRemark() {
        return updateRemark;
    }

    /**
     * @param updateRemark 更新原因
     */
    public void setUpdateRemark(String updateRemark) {
        this.updateRemark = updateRemark == null ? null : updateRemark.trim();
    }

    /**
     * @return 逻辑删除字段
     */
    public Short getDeleted() {
        return deleted;
    }

    /**
     * @param deleted 逻辑删除字段
     */
    public void setDeleted(Short deleted) {
        this.deleted = deleted;
    }

    /**
     * @return 版本
     */
    public Short getVersion() {
        return version;
    }

    /**
     * @param version 版本
     */
    public void setVersion(Short version) {
        this.version = version;
    }

    /**
     * @return 是否是最新数据，0：最新数据；1：历史数据
     */
    public Short getIsNewest() {
        return isNewest;
    }

    /**
     * @param isNewest 是否是最新数据，0：最新数据；1：历史数据
     */
    public void setIsNewest(Short isNewest) {
        this.isNewest = isNewest;
    }

    /**
     * @return 数据状态
     */
    public String getDataStated() {
        return dataStated;
    }

    /**
     * @param dataStated 数据状态
     */
    public void setDataStated(String dataStated) {
        this.dataStated = dataStated == null ? null : dataStated.trim();
    }

    /**
     * @return 阴保电源编号（PIC_CORRCTRL_EQPT_CPPOWER.ID_）
     */
    public String getCppowerId() {
        return cppowerId;
    }

    /**
     * @param cppowerId 阴保电源编号（PIC_CORRCTRL_EQPT_CPPOWER.ID_）
     */
    public void setCppowerId(String cppowerId) {
        this.cppowerId = cppowerId == null ? null : cppowerId.trim();
    }

    /**
     * @return 设备编号(自定义编号)
     */
    public String getCustomNumber() {
        return customNumber;
    }

    /**
     * @param customNumber 设备编号(自定义编号)
     */
    public void setCustomNumber(String customNumber) {
        this.customNumber = customNumber == null ? null : customNumber.trim();
    }

    public Object getOutputVoltage() {
        if(outputVoltage !=null){
         return new BigDecimal((String)outputVoltage);
        }
        return null;
    }

    public void setOutputVoltage(Object outputVoltage) {
        this.outputVoltage = outputVoltage;
    }

    public Object getOutputCurrent() {
        if(outputCurrent !=null){
            return new BigDecimal((String)outputCurrent);
        }
        return null;
    }

    public void setOutputCurrent(Object outputCurrent) {
        this.outputCurrent = outputCurrent;
    }

    /**
     * @return 控制电位（mV）
     */
    public Integer getSettingPotential() {
        return settingPotential;
    }

    /**
     * @param settingPotential 控制电位（mV）
     */
    public void setSettingPotential(Integer settingPotential) {
        this.settingPotential = settingPotential;
    }

    /**
     * @return 通电点电位（mV）
     */
    public Integer getMetricalPotential() {
        return metricalPotential;
    }

    /**
     * @param metricalPotential 通电点电位（mV）
     */
    public void setMetricalPotential(Integer metricalPotential) {
        this.metricalPotential = metricalPotential;
    }

    /**
     * @return 运行状态（RUNNING运行中、WRITTEN_OFF已报废、MAINTENANCE维修中、LEAVE_UNUSED闲置中）
     */
    public String getActiveStated() {
        return activeStated;
    }

    /**
     * @param activeStated 运行状态（RUNNING运行中、WRITTEN_OFF已报废、MAINTENANCE维修中、LEAVE_UNUSED闲置中）
     */
    public void setActiveStated(String activeStated) {
        this.activeStated = activeStated == null ? null : activeStated.trim();
    }

    /**
     * @return 停机时间_开始
     */
    public Date getDownBeginDate() {
        if(downBeginDate.getTime() == -1){
           return null;
        }
        return (Date)downBeginDate;
    }

    /**
     * @param downBeginDate 停机时间_开始
     */
    public void setDownBeginDate(Date downBeginDate) {
        this.downBeginDate = downBeginDate;
    }

    /**
     * @return 停机时间_结束
     */
    public Date getDownEndDate() {
      if(downEndDate.getTime() == -1){
          return null;
      }
        return (Date)downEndDate;
    }

    /**
     * @param downEndDate 停机时间_结束
     */
    public void setDownEndDate(Date downEndDate) {
        this.downEndDate = downEndDate;
    }

    /**
     * @return 停机原因DOWNREASON
     */
    public String getDownReason() {
        return downReason;
    }

    /**
     * @param downReason 停机原因DOWNREASON
     */
    public void setDownReason(String downReason) {
        this.downReason = downReason == null ? null : downReason.trim();
    }

    /**
     * @return 接地和避雷器设施检查维护
     */
    public String getGrounding() {
        return grounding;
    }

    /**
     * @param grounding 接地和避雷器设施检查维护
     */
    public void setGrounding(String grounding) {
        this.grounding = grounding == null ? null : grounding.trim();
    }

    /**
     * @return 年检修记录
     */
    public String getAnnualRepairRecord() {
        return annualRepairRecord;
    }

    /**
     * @param annualRepairRecord 年检修记录
     */
    public void setAnnualRepairRecord(String annualRepairRecord) {
        this.annualRepairRecord = annualRepairRecord == null ? null : annualRepairRecord.trim();
    }

    /**
     * @return 异常编号（若无异常则为空）PIC_CTRL_RECODE_EXCEPTION.ID_
     */
    public String getExceptionId() {
        return exceptionId;
    }

    /**
     * @param exceptionId 异常编号（若无异常则为空）PIC_CTRL_RECODE_EXCEPTION.ID_
     */
    public void setExceptionId(String exceptionId) {
        this.exceptionId = exceptionId == null ? null : exceptionId.trim();
    }

    /**
     * @return 电缆及连接端子检测维护
     */
    public String getConnectionCheck() {
        return connectionCheck;
    }

    /**
     * @param connectionCheck 电缆及连接端子检测维护
     */
    public void setConnectionCheck(String connectionCheck) {
        this.connectionCheck = connectionCheck == null ? null : connectionCheck.trim();
    }

    /**
     * @return 仪表校准
     */
    public String getInstrumentCalibration() {
        return instrumentCalibration;
    }

    /**
     * @param instrumentCalibration 仪表校准
     */
    public void setInstrumentCalibration(String instrumentCalibration) {
        this.instrumentCalibration = instrumentCalibration == null ? null : instrumentCalibration.trim();
    }

    /**
     * @return 记录人（直接存名称）
     */
    public String getRecorder() {
        return recorder;
    }

    /**
     * @param recorder 记录人（直接存名称）
     */
    public void setRecorder(String recorder) {
        this.recorder = recorder == null ? null : recorder.trim();
    }

    /**
     * @return 记录时间
     */
    public Date getRecordTime() {
        return recordTime;
    }

    /**
     * @param recordTime 记录时间
     */
    public void setRecordTime(Date recordTime) {
        this.recordTime = recordTime;
    }

    /**
     * @return 备注
     */
    public String getRemarks() {
        return remarks;
    }

    /**
     * @param remarks 备注
     */
    public void setRemarks(String remarks) {
        this.remarks = remarks == null ? null : remarks.trim();
    }

    /**
     * @return 业务组织路径
     */
    public String getOrgBizPath() {
        return orgBizPath;
    }

    /**
     * @param orgBizPath 业务组织路径
     */
    public void setOrgBizPath(String orgBizPath) {
        this.orgBizPath = orgBizPath == null ? null : orgBizPath.trim();
    }
}
